package com.lin.fengxiu.dto;

import com.lin.fengxiu.core.enumeration.LoginType;
import com.lin.fengxiu.dto.validators.TokenPassword;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.NotBlank;

/**
 * @ClassName TokenGetDTO
 * @Description TODO
 * @Author wushaopei
 * @Date 2021/3/18 21:38
 * @Version 1.0
 */
@Getter
@Setter
public class TokenGetDTO {

    /**
     *  @Description account 有两种可能：
     *                  如果是账号、密码登录，这里就是账号
     *                  如果是手机短信验证，这里就是手机号
     *                  如果是邮箱登录，这里就是邮箱号
     *                  account 不能为空
     */
    @NotBlank(message = "account不允许为空")
    private String account;
    /**
     *  @Description 如果是账号、密码登录，这里是密码
     *                 如果是手机短信登录，这里就是验证码
     *                 如果是邮箱登录，这里是邮箱登录密码
     *                 password 不一定要输入
     */
    @TokenPassword( max=30, message = "{token.password}")
    private String password;

    /**
     *  @Description type 登录类型：这里建议使用枚举来表示
     */
    private LoginType type;
}
